package com.hskn.hss.module.tlfacilities.entity;

import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.hskn.hss.core.annotation.Excel;
import com.hskn.hss.module.tlfacilitietype.entity.TlFacilitiesType;
import lombok.Data;
import lombok.EqualsAndHashCode;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 *
 */
@Data
@EqualsAndHashCode(callSuper = false)
public class TIFacilitiesParkVO implements Serializable {

    @TableId(value = "id", type = IdType.ASSIGN_UUID)
    private String id;
    /**
     * 设施名称
     */
    @Excel(name = "园林名称(必填)")
    private String faclname;
    /**
     * 设施大类id
     */

    private String facltypeid;
    @Excel(name = "设施类型（大类）(必填)",prompt = "请填写系统中存在的设施类型，否则将影响导入")
    private String facltypename;

    /**
     * 设施小类id
     */
    private String facltypeitemid;
    @Excel(name = "设施小类(必填)",prompt = "请填写系统中存在的设施类型，否则将影响导入")
    private String facltypeitemname;



    /**
     * 设施编号
     */
    @Excel(name = "设施编号")
    private String faclcode;

    /**
     * 设施所属部门id
     */
    private String facldeptid;
    @Excel(name = "所属机构")
    private String facldeptname;

    /**
     * 责任人id
     */
    private String principal;
    @TableField(exist = false)
    private String principalname;

    /**
     * 设施状态 0 正常 、1废弃、2维修、3拆除、4暂停
     */
    private String faclstatus;

    /**
     * 维护单位id
     */
    @TableField("mtadeptId")
    private String mtadeptid;
    @TableField(exist = false)
    private String mtadeptname;

    /**
     * 点半径
     */
    @Excel(name = "点位半径")
    private Integer radii;

    /**
     * 启用日期
     */
    private Date startdate;

    /**
     * 商圈
     */
    private String businessarea;

    /**
     * 设施地址
     */
    private String facladdr;

    /**
     * 设施地址中文描述
     */
    @Excel(name = "地址")
    private String facladdrdetail;

    /**
     * 备注
     */
    private String remark;

    /**
     * 绑定设备id
     */
    private String bindequipids;

    /**
     * 0 未绑定 1已绑定
     */
    private String bindstatus;

    private String bindobjname;

    /**
     * 绑定时间
     */
    private Date bindtime;

    /**
     * 附属设施id
     */
    private String subfacl;

    /**
     * 最近处理
     */
    private String recentdeal;

    /**
     * 处理超时提醒
     */
    private String dealovertime;

    /**
     * 累计运行时长
     */
    private String totalworktime;

    /**
     * 创建人id
     */
    private String createby;

    /**
     * 创建时间
     */
    private Date createtime;

    /**
     * 修改人id
     */
    private String updateby;

    /**
     * 修改时间
     */
    private Date updatetime;

    /**
     * 创建部门id
     */
    private String deptid;


    @TableField(exist = false)
    private List<JSONObject> details; //拓展信息

    private String fileurl;

    @TableField(exist = false)
    private List binds; //绑定信息

    @TableField(exist = false)
    private List<TlFacilitiesType> tlFacilitiesTypeList;

    @TableField(exist = false)
    private String lng; //绑定信息

    @TableField(exist = false)
    private String lat; //绑定信息


    @TableField(exist = false)
    private List channels;
    /**
     * 绑定设备id
     */
    @TableField(exist = false)
    private String equipid;
    /**
     * 绑定设备id
     */
    @TableField(exist = false)
    private String videoonlinestatus;
    /**
     * 设备类型名称
     */
    @TableField(exist = false)
    private String eqptype;
    /**
     * 设备编号
     */
    @TableField(exist = false)
    private String equipcode;
    /**
     * 开门时间
     */
    private Date openTime;
}